const mongoose = require("../utils/mongoose")
//这个模块不做其他任何的业务逻辑,只专注于操作数据库

//定义文档的数据字段=>相当于sql中建表

let schema = mongoose.Schema({
    username: { type: String, required: true },
    password: { type: String, required: true },
    nickname: String,
    email: String,
    phone: String,
    gender: String,
})

//创建集合

let Col = mongoose.model('users', schema);//创建的集合名字,一定要带上s,如果不带s,它会自动帮你加s

//所谓的注册就是往数据库增加一个文档

//增
//定义一个专门用于将数据保存在数据中的方法

//jsDoc注释语法
/**
 * 
 * @param {Object} params 一个对象,里面是用户注册的信息
 */

const insert = params => {
    const db = new Col(params);
    return db.save()
        .then(res => res)
        .catch(err => {
            console.log(err);
            return false
        })
}

//删


//改


//查
/**
 * 
 * @param {Object} query 查询数据库的条件
 * @returns {Permise} 返回的是一个promise类型
 */
const find = (query = {}) => Col.find(query)
    .then(res => res)
    .catch(err => {
        console.log(err);
        return false
    })

module.exports = {
    insert,
    find
}